IF exists(SELECT * FROM dbo.sysobjects WHERE name='R_vulMaandcijfersVoorRapport' AND xtype='P') 
BEGIN
	DROP PROCEDURE R_vulMaandcijfersVoorRapport
END
GO

CREATE              procedure  R_vulMaandcijfersVoorRapport
(@klas varchar(5))
as
----------------------------------------
--  Wis de oude gegevens
----------------------------------------

delete from r_maandCijfersVoorRapport where klas = @klas

----------------------------------------
-- Pas de maandcijfers aan voor eigenaardige maxima
----------------------------------------

execute r_pasMaandCijfersAan

----------------------------------------
--  Vul met de leerling en vakgegevens
----------------------------------------

insert into r_maandcijfersVoorRapport(
inschrijvingsNr,klas,vakcode,aantalUren ,
volgnummer,blokNr) 
select distinct l.inschrijvingsNr,@klas,
t.vakcode,t.aantalUren,t.volgnummer,t.blokNr
from 
(select inschrijvingsNr from leerlingen..leerlingen where klas like @klas)as l 
cross join (select * from leraars.dbo.alleKlasUurVakcodes(@klas))as t


--------------------------------------------------------
--  Vul met de cijfer- en gemiddeldegegevens
--------------------------------------------------------
update r_maandcijfersVoorRapport
  set procent1 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandProcenten(@klas,1) as r
     on r.inschrijvingsNr = c.inschrijvingsNr
        and r.vak = c.vakcode
where c.klas = @klas

update r_maandcijfersVoorRapport
  set gemiddelde1 = r.procent
  from r_maandCijfersVoorRapport  as c
     left join r_maandVakgemiddelde(@klas,1) as r
     on r.vak = c.vakcode
	and c.klas = @klas
where c.klas = @klas

update r_maandcijfersVoorRapport
  set procent2 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandProcenten(@klas,2) as r
     on r.inschrijvingsNr = c.inschrijvingsNr
        and r.vak = c.vakcode
where c.klas = @klas

update r_maandcijfersVoorRapport
  set gemiddelde2 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandVakgemiddelde(@klas,2) as r
     on r.vak = c.vakcode
	and c.klas = @klas
where c.klas = @klas

update r_maandcijfersVoorRapport
  set procent3 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandProcenten(@klas,3) as r
     on r.inschrijvingsNr = c.inschrijvingsNr
        and r.vak = c.vakcode
where c.klas = @klas

update r_maandcijfersVoorRapport
  set gemiddelde3 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandVakgemiddelde(@klas,3) as r
     on r.vak = c.vakcode
	and c.klas = @klas
where c.klas = @klas

update r_maandcijfersVoorRapport
  set procent4 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandprocenten(@klas,4) as r
     on r.inschrijvingsNr = c.inschrijvingsNr
        and r.vak = c.vakcode
where c.klas = @klas

update r_maandcijfersVoorRapport
  set gemiddelde4 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandVakgemiddelde(@klas,4) as r
     on r.vak = c.vakcode
	and c.klas = @klas
where c.klas = @klas

update r_maandcijfersVoorRapport
  set procent5 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandprocenten(@klas,5) as r
     on r.inschrijvingsNr = c.inschrijvingsNr
        and r.vak = c.vakcode
where c.klas = @klas

update r_maandcijfersVoorRapport
  set gemiddelde5 = r.procent
  from r_maandcijfersVoorRapport  as c
     left join r_maandVakgemiddelde(@klas,5) as r
     on r.vak = c.vakcode
	and c.klas = @klas
where c.klas = @klas